[Chapter 3] Databases
Author: Bryan Costales & Eric Allman
Date: 1999-02-04T00:04:30Z

#

| Chapter 3 |

# 3. Databases

Contents:
Support in Makefile
Aliasing
The ~/.forward file
:include: Files and Mailing Lists
The makemap Program
The K Command
Classes
Databases in Rules
The User Database
Hints

Database support in sendmail includes external files, internal symbol tables, and database-style hooks into processes. Databases support the common aliases and such m4 style features as mailertable and the User Database.

## 3.1 Support in Makefile

Some database support is always supplied as a part of sendmail (like dequote), while others require you to include support inside your Makefile when building sendmail. Support is added on the `DBMDEF=` line:

>     DBMDEF= -DNDBM

This line adds support for ndbm(3) database files (see §18.4.1). Some database formats, such as db, may require that you also add `include` file and library support:

>     INCDIRS=-I/usr/local/include/db
>     LIBS=   -ldb -lresolv

Here `LIBS=` had `-ldb` added (see §18.4.6), and `INCDIR=` show the path to the db `include` files (see §18.4.3).

-DHESIOD

  Supports hesiod(3) for aliases only (see §18.8.10).

-DLDAPMAP

  Supports ldap(3) white pages (see §18.8.15).

-DNDBM

  Supports ndbm(3) database files (see §18.8.24).

-DNEWDB

  Supports the Berkeley db(3) database (see §18.8.28).

-DNIS

  Supports Sun's nis network services (see §18.8.29).

-DNISPLUS

  Supports Sun's nisplus network services (see §18.8.30).

-DNETINFO

  Supports NeXT's netinfo(3) (see §18.8.27).

2.17 Hints |  | 3.2 Aliasing